//package com.laobindj.siji.application;
//
///**
// * Created by 张龙飞 on 2019/5/13.
// */
//
//import android.content.Context;
//import android.support.annotation.Keep;
//import android.support.multidex.MultiDex;
//import android.util.Log;
//
//import com.laobindj.siji.utils.SpUtilsNew;
//import com.taobao.sophix.PatchStatus;
//import com.taobao.sophix.SophixApplication;
//import com.taobao.sophix.SophixEntry;
//import com.taobao.sophix.SophixManager;
//import com.taobao.sophix.listener.PatchLoadStatusListener;
//
///**
// * Sophix入口类，专门用于初始化Sophix，不应包含任何业务逻辑。
// * 此类必须继承自SophixApplication，onCreate方法不需要实现。
// * 此类不应与项目中的其他类有任何互相调用的逻辑，必须完全做到隔离。
// * AndroidManifest中设置application为此类，而SophixEntry中设为原先Application类。
// * 注意原先Application里不需要再重复初始化Sophix，并且需要避免混淆原先Application类。
// * 如有其它自定义改造，请咨询官方后妥善处理。
// */
//public class SophixStubApplication extends SophixApplication {
//    private final String TAG = "SophixStubApplication";
//    // 此处SophixEntry应指定真正的Application，并且保证RealApplicationStub类名不被混淆。
//    @Keep
//    @SophixEntry(App.class)
//    static class RealApplicationStub {}
//    @Override
//    protected void attachBaseContext(Context base) {
//        super.attachBaseContext(base);
////         如果需要使用MultiDex，需要在此处调用。
//         MultiDex.install(this);
//        initSophix();
//    }
//    private void initSophix() {
//        String appVersion = "0.0.0";
//        try {
//            appVersion = this.getPackageManager()
//                    .getPackageInfo(this.getPackageName(), 0)
//                    .versionName;
//        } catch (Exception e) {
//        }
//        final SophixManager instance = SophixManager.getInstance();
//        instance.setContext(this)
//                .setAppVersion(appVersion)
//                .setSecretMetaData(null, null, null)
//                .setEnableDebug(true)
//                .setEnableFullLog()
//                .setPatchLoadStatusStub(new PatchLoadStatusListener() {
//                    @Override
//                    public void onLoad(final int mode, final int code, final String info, final int handlePatchVersion) {
//                        Log.e("isHotfixCode","---------"+code);
//
//                        // 补丁加载回调通知
//                        if (code == PatchStatus.CODE_LOAD_SUCCESS) {
//                            // 表明补丁加载成功或者被一键清空了补丁
//                        } else if (code == PatchStatus.CODE_LOAD_RELAUNCH||code == PatchStatus.CODE_REQ_CLEARPATCH) {
//                            // 表明新补丁生效需要重启. 开发者可提示用户或者强制重启;
//                            // 建议: 用户可以监听进入后台事件, 然后应用自杀
//                            SpUtilsNew.putString("isHotfix","1");
//                        }
//
//                    }
//                }).initialize();
//    }
//}